<?php 
use com\soka as soka;
class Rol_Ctl extends soka\SokaController
{
	private $_con;	
	public function _init()
	{
		session_start();
        com\lib\Session::acceso(array('admin'));
		$this->_con = $this->setModel('rol');
	}
	public function index($id = null)
	{
		(isset($_POST['submit']) && ($_POST['id'] == 0)) ? self::_add() : false;		
		$this->con = $this->_con->id((int)$id)->getById();
		isset($_POST['id']) ? self::_update(): false;	
		$this->datos = isset($_POST['btn_buscar']) ? $this->_con->getAll(null, null, array('nombre'=> $_POST['txt_buscar'])): $this->_con->getAll();
	}
	
	private function _add()
	{
		extract($_POST);

		$user = $this->_con->verify($nombre);
		if ($user['user_exist']) {		
			$msg['error']  = 'El rol ya existe.';
			} else {
			if(isset($user['user_data']))  {
				$this->_con->id($user['user_data'])->getById()->estado(1)->add();
				$msg['error'] = 'El registro fue guardado correctamente.';
			}
			else {
				$this->_con->nombre($nombre)->estado(1)->add();
				$msg['error']  = 'El registro fue guardado correctamente.';
			}
		}
		$this->messagge= $msg;
	}

	public function delete()
	{
		$this->view(false);
		if (isset($_POST['id_delete'])) {
			$this->_con->id((int) $_POST['id_delete']);
			if($this->_con->getById() && $this->_con->estado() == 1) {
				if($this->_con->del(false))
					$data['messagge'] = 'El registro fue desactivado correctamente.';
							$msg['causas'][]  = 'i';
			} else {
				if($this->_con->del(true))
					$data['messagge'] = 'El registro fue activado correctamente.';
							$msg['causas'][]  = 'i';
			}
		}
		echo json_encode($data);
	}
	private function _update()
	{
		extract($_POST);
		if( ($id > 0) && $this->_con->id($id)->estado(1)->add())
			$ho['error'] = 'El registro fue actualizado correctamente.';
				$this->messagge2=$ho;
	}
}